package com.canic.dkd.web.shop.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.canic.dkd.web.merchandise.dto.MerchandiseOutputDTO;
import com.canic.dkd.web.shop.dto.ShopOutputDTO;
import com.canic.dkd.web.shop.entity.Shop;

import java.util.List;
import java.util.Map;

/**
 * ShopService
 * @author ZC
 */
public interface ShopService extends IService<Shop> {

    /**
     * 获取所有
     * @return
     */
    List<Shop> fullList();

    /**
     * 分页查询
     * @param page
     * @return
     */
    Page<Shop> findAllShopPage(Page<Shop> page);

    /**
     * 获取满足条件数据，带查询条件
     * @return
     */
    List<Shop> eligibleList(Shop shop);

    /**
     * 分页查询,获取满足条件数据，带查询条件
     * @return
     */
    Page<Shop> eligiblePageList(Page<Shop> page, Shop shop);

    /**
     * 分页查询(多表) 头体结构
     * @param page
     * @param paraMap
     * @return
     */
    Page<ShopOutputDTO> eligibleComplexPageList(Page<ShopOutputDTO> page, Map<String, Object> paraMap);

    /**
     * 多表查询
     * @param page
     * @param paraMap
     * @return
     */
    public Page<MerchandiseOutputDTO> getMerchandiseListByTypeId(Page<MerchandiseOutputDTO> page, Map<String, Object> paraMap);

}
